<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

<script>
// 同一个Promise对象添加多个成功/失败的回调函数，会依次执行

/* let p1 = new Promise((resolve,reject)=>{
    // resolve(123);
    reject(456);
});

p1.then(
    (res)=>{
        console.log( 'p1成功1',res );
    },
    (res)=>{
        console.log( 'p1失败1',res );
    }
);// p2.0

p1.then(
    (res)=>{
        console.log( 'p1成功2',res );
    },
    (res)=>{
        console.log( 'p1失败2',res );
    }
);// p2.1

p1.then(
    (res)=>{
        console.log( 'p1成功3',res );
    },
    (res)=>{
        console.log( 'p1失败3',res );
    }
);// p2.2 */


// 思考：先改变Promise对象状态，还是先指定成功/失败状态的回调函数？
let p2 = new Promise((resolve,reject)=>{// 同步执行
    // 先改变状态再指定成功/失败的回调函数
    // resolve(11);
    // reject(22);

    // 先指定成功/失败的回调函数再改变状态
    setTimeout(()=>{// 异步执行
        resolve(33);
        // reject(44);
    },1000)
});
p2.then(// 同步执行
    (res)=>{// p2成功的回调
        console.log( 'p2成功',res );
    },
    (res)=>{// p2失败的回调
        console.log( 'p2失败',res );
    }
)

</script>
</body>
</html>